package com.zhentao.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhentao.dto.QueryConditionDto;
import com.zhentao.dto.SummaryQueryResultDto;
import com.zhentao.pojo.DataCollection;

import java.util.List;

public interface DataQueryService {
    
    /**
     * 汇总查询
     */
    List<SummaryQueryResultDto> summaryQuery(QueryConditionDto condition);
    
    /**
     * 数据查询
     */
    IPage<DataCollection> dataQuery(QueryConditionDto condition);
    
    /**
     * 原始数据查询
     */
    IPage<DataCollection> rawDataQuery(QueryConditionDto condition);
    
    /**
     * 导出查询结果
     */
    Object exportQueryResult(QueryConditionDto condition, String exportType);
    
    /**
     * 获取可用的分组维度
     */
    List<String> getAvailableGroupDimensions(String queryType);
    
    /**
     * 获取可用的输出字段
     */
    List<String> getAvailableOutputFields(String queryType);
} 

